Development Tools

Introduction

This section will review many of the popular development tools used to create component software on the Mac. We'll try to help you decide which tools should be used for which jobs. Subjects covered in this section include:

Decision Process

There is a wide range of development tools becoming available for helping you create OpenDoc part editors and SOM libraries. Some of these tools have been shipping for years, while others are expected to ship in the coming months. If you are solving a complex customer problem, you may need to create a variety of part editors and libraries, and you may find yourself using many different development systems and tools. When you need to create a specific new part editor or library, you might use the information outlined below to decide which tools to use.

Features


First, you must decide on the features needed for a particular component. For example, the table above indicates that a Java applet will let you add behavior and a user interface, but has no support foe embedding other parts inside, or for linking data. As another example, a stand-alone SOM library can provide behavior or services, but has no user interface, and provides none of the other features usually associated with full OpenDoc parts. The chart indicates that the most full-featured component is probably an OpenDoc container part. It is no coincidence that creating this kind of component currently requires a relatively high level of programming skill.

Development Environments


The table above summarizes which development environments can be used for creating each type of component. Abbreviations are as follows:
- MPW is Apple's Macintosh Programmers Workshop.
- CW is Metrowerks CodeWarrior.
- RB is Symantec's C++ Development System (code-named Rainbow).
- AppWare is a visual RAD tool. system.
- Denali is Apple's RAD tool that uses Basic as a scripting language.
- Café is Symantec's Java Development System.
- WebBurst is a visual tool for building Java applets.

Notice that you can use either MPW, CodeWarrior, or Rainbow for creating most of these types of components. Which one should you use? They each have advantages, but we will admit that most OpenDoc developers seem to be using CodeWarrior these days. These tools are described in more detail below.

Frameworks and Libraries


The libraries and frameworks referred to above include:
- ODF. Apple's OpenDoc Development Framework.
- MacApp. Apple's applications framework.
- PowerParts. Metrowerks' framework for building leaf parts.
- Prograph CPX. Pictorius' applications framework.
- CCL. The Claris Container Library.
- OC. 6prime's Open Container library.
- ODIA. Apple's OpenDoc Internet Adapter library.

These libraries are described in more detail below.

Scenarios

Example 1: Simple OpenDoc leaf part.
In this case, you have at least three choices. First, you could use ODF, and write one set of source code used to compile a part editor for Mac and, soon, for Windows. Second, you could use PowerPart to create a part editor for the Mac. Third, you could code directly to the OpenDoc APIs. Which one should you choose? We'll go into that in more detail below, after we describe more about these tools.
Example 2: Container application.
You have a wide variety of choices. For example, if you have an existing application based on MacApp, then you would probably modify your code to work with the latest version of MacApp to inherit much of the container support. If you are converting an existing application written in Prograph, you should probably wait for container support to be added to the ABC's. With other applications, you can use a C-based library to help provide container support. The three libraries listed in the chart above are CCL, OC, and ODIA. All three are described in more detail below.

C++ Development Environments

C++ Utilities


Java Tools

Frameworks and Libraries

See the latest release of CodeWarrior or visit the Metrowerks Web site for more details.

RAD Tools


Visual programming with AppWare

OverviewHands-OnTechnologies
ComponentsToolsCase Studies
Home
©1996 Apple Computer, Inc.

Last modified by DAW on 11-July-96